﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Linq.Expressions;
using System.Text;
using System.Threading.Tasks;

namespace Corp.Proj.IDAL
{
    public interface IBaseDal<T>
        where T : class, new()
    {

        [Obsolete("建议使用此重载：IQueryable<T> GetQueryable(Expression<Func<T, bool>> where)")]
        IQueryable<T> GetQueryable();

        IQueryable<T> GetQueryable(Expression<Func<T, bool>> where);

        [Obsolete("不建议使用，应该调用DbSession的SaveChanges方法")]
        int SaveChanges();

        T Add(T entity);

        T Remove(T entity);

        void Modify(T entity);

    }
}
